package com.java.interceptor;//package com.java.interceptor;
//
//import com.java.model.Power;
//import org.springframework.web.servlet.HandlerInterceptor;
//
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpSession;
//import java.util.ArrayList;
//import java.util.List;
//
//public class PowerInterceptor implements HandlerInterceptor {
//
//    @Override
//    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//        String uri = request.getRequestURI();
//
//        // 判断是否是登录请求或跳转登录页面，如果是则放行
//        if (uri.indexOf("/login") != -1 || uri.indexOf("/toLogin") != -1) {
//            return true;
//        }
//        //判断里面有没有该权限
//        HttpSession session = request.getSession();
//        List<Power> powerList = (List<Power>) session.getAttribute("power");
//        List<String> stringList = new ArrayList<>();
//        for (Power power: powerList){
//            stringList.add(power.getPowerUrl());
//        }
//        if (!stringList.contains(uri)){//没有该权限则不被管理
//            return true;
//        }
//
//        //判断用户是否有该权限
//        List<Power> adminPowerList =(List<Power>) session.getAttribute("powerList");
//        List<String> list = new ArrayList<>();
//        for (Power power : adminPowerList){
//            list.add(power.getPowerUrl());
//        }
//        if (!list.contains(uri)){//如果没有则不能通过
//            request.getRequestDispatcher("/WEB-INF/view/404.jsp").forward(request,response);
//            return false;
//        }
//        return true;
//    }
//
//}
